﻿//using System;
//using System.Collections.Generic;
//using System.Linq;
//using System.Text;
//using System.IO;

//namespace SanctusSoftware.CcliSongSelectLib.Management
//{
  
//  public static class SongSelectDocumentManager
//  {

//    private static readonly List<SongSelectDocument> _Documents = new List<SongSelectDocument>();

//    public static SongSelectDocument[] Documents
//    {
//      get { return _Documents.ToArray(); }
//    }


//    public static void Add(SongSelectDocument doc)
//    {
//      if (_Documents.Contains(doc))
//      {
//        throw new ArgumentException();
//      }
//      _Documents.Add(doc);
//    }

//    public static void AddFromFile(string path)
//    {
//      SongSelectDocument doc = new SongSelectDocument();
//      doc.Load(path);
//      Add(doc);
//    }

//    public static void AddFromDirectory(string path)
//    {
//      DirectoryInfo di = new DirectoryInfo(path);
//      foreach (FileInfo file in di.GetFiles("*.usr"))
//      {
//        AddFromFile(file.FullName);
//      }
//    }

//    #region Lists of Everything

//    // TODO: Cache this stuff

//    public static string[] AuthorList
//    {
//      get
//      {
//        List<string> temp = new List<string>();
//        foreach (SongSelectDocument doc in _Documents)
//        {
//          temp.AddRange(doc.AuthorList);
//        }
//        return temp.Distinct<string>().ToArray<string>();
//      }
//    }

//    public static string[] ThemeList
//    {
//      get
//      {
//        List<string> temp = new List<string>();
//        foreach (SongSelectDocument doc in _Documents)
//        {
//          temp.AddRange(doc.ThemesList);
//        }
//        return temp.Distinct<string>().ToArray<string>();
//      }
//    }

//    #endregion


//  }

//}
